Electronic-manual browsing apparatus and system

ABSTRACT

An electronic-manual browsing apparatus includes an electronic-manual-display processing section that displays, on an electronic-manual display screen on a display section, an electronic manual including a sample program concerning a control apparatus, a program-creation-screen-display processing section that displays, on the display section, a program creation screen for creating a program used in the control apparatus, and a program copy section that copies the sample program in the electronic manual selected according to an instruction from a user and temporarily stores the sample program. The program-creation-screen-display processing section pastes the stored sample program in the program creation screen in a format editable on the program creation screen.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a Divisional application of U.S. application Ser.No. 14/436,948 filed Apr. 20, 2015 which is a National Stage ofInternational Application No. PCT/JP2012/083693 filed Dec. 26, 2012, thecontents of these applications are incorporated herein by reference intheir entireties.

FIELD

The present invention relates to an electronic-manual browsing apparatusand an electronic-manual browsing system.

BACKGROUND

Electronic apparatuses such as peripheral apparatuses are connected to acomputer. Application software operating on the computer is installed inthe computer. Therefore, conventionally, besides a manual (an operationmanual) of the computer, manuals of the electronic apparatuses andmanuals of the application software are independently present. Undersuch a situation, there has been proposed an electronic manual systemwith which the manuals of the computer, the electronic apparatuses, andthe application software can be viewed on the computer in associationand coordination with one another (see, for example, Patent Literature1).

CITATION LIST Patent Literature

Patent Literature 1: Japanese Patent Application Laid-Open No.2003-271662

SUMMARY Technical Problem

Incidentally, in a control apparatus such as a programmable controllerconfiguring an FA (Factory Automation) system as well, a manual isdigitized in a format such as a PDF file. In the digitized manual,besides a setting method and a using method for the control apparatus, asample program of a language that cannot be described by a simple textsuch as a ladder language is also described. However, such a sampleprogram cannot be copied and pasted to an engineering tool forperforming setting and the like for the control apparatus. Therefore,there is a problem in that, because the sample program needs to bemanually input, the manual input takes time and is likely to cause aninput mistake.

The present invention has been devised in view of the above and it is anobject of the present invention to obtain an electronic-manual browsingapparatus and an electronic-manual browsing system capable of pasting,from an electronic manual to engineering software, a sample programconcerning a program language that cannot be described by a simple text.

Solution to Problem

In order to solve the aforementioned problems, an electronic-manualbrowsing apparatus includes: an electronic-manual-display processingsection that displays, on an electronic-manual display screen on adisplay section, an electronic manual including a sample programconcerning a control apparatus; a program-creation-screen-displayprocessing section that displays, on the display section, a programcreation screen for creating a program used in the control apparatus;and a program copy section that copies the sample program in theelectronic manual selected according to an instruction from a user andtemporarily stores the sample program, wherein theprogram-creation-screen-display processing section pastes the storedsample program in the program creation screen in a format editable onthe program creation screen.

Advantageous Effects of Invention

According to the present invention, the sample program in the electronicmanual displayed by the electronic-manual-display processing section ispasted on the program creation screen in the form editable by theprogram-creation-screen-display processing section. Therefore, a usercan create a program concerning a control apparatus by diverting thesample program in the electronic manual. As a result, there is an effectthat it is possible to reduce time for a manual input and prevent aninput mistake.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram schematically showing the functionalconfiguration of an electronic-manual browsing apparatus according to afirst embodiment.

FIG. 2 is a diagram showing an example of the configuration ofelectronic manual data.

FIG. 3 is a diagram showing an example of a ladder program.

FIG. 4 is a flowchart for explaining an example of a procedure of copyprocessing of a program according to the first embodiment.

FIG. 5 is a diagram schematically showing the example of the procedureof the copy processing of the program according to the first embodiment.

FIG. 6 is a diagram showing an example of a data structure of sampleprogram data according to a second embodiment.

FIG. 7 is a flowchart for explaining an example of a procedure ofcopying processing of a program according to the second embodiment.

FIG. 8 is a diagram schematically showing the example of the procedureof the copy processing of the program according to the secondembodiment.

FIG. 9 is a diagram schematically showing an example of theconfiguration of a sample program.

FIG. 10 is a flowchart for explaining an example of a procedure of copyprocessing of a program according to a third embodiment.

FIG. 11 is a diagram schematically showing the example of the procedureof the copy processing of the program according to the third embodiment.

FIG. 12 is a block diagram schematically showing the functionalconfiguration of an electronic-manual browsing apparatus according to afourth embodiment.

FIG. 13 is a flowchart for explaining an example of a procedure of copyprocessing of a program according to the fourth embodiment.

FIG. 14 is a diagram schematically showing the example of the procedureof the copy processing of the program according to the fourthembodiment.

FIG. 15 is a flowchart for explaining an example of a procedure of copyprocessing of a program according to a fifth embodiment.

FIG. 16 is a diagram schematically showing the example of the procedureof the copy processing of the program according to the fifth embodiment.

FIG. 17 is a block diagram schematically showing an example of theconfiguration of an electronic-manual browsing system.

FIG. 18 is a block diagram schematically showing an example of thefunctional configuration of an electronic-manual browsing apparatusaccording to a sixth embodiment.

FIG. 19 is a diagram showing an example of a system-configurationsetting screen.

FIG. 20 is a flowchart for explaining an example of a procedure ofupdate processing of a sample program according to the sixth embodiment.

DESCRIPTION OF EMBODIMENTS

Preferred embodiments of an electronic-manual browsing apparatus and anelectronic-manual browsing system according to the present invention areexplained in detail below with reference to the accompanying diagrams.Note that the present invention is not limited by the embodiments. Inthe following explanation, as an example, an electronic manualconcerning a control apparatus such as a programmable controller isbrowsed.

First Embodiment

FIG. 1 is a block diagram schematically showing the functionalconfiguration of an electronic-manual browsing apparatus according to afirst embodiment. An electronic-manual browsing apparatus 10 includes aninput section 11, a display section 12, an electronic-manual-datastoring section 13, an electronic-manual-display processing section 14,a program copy section 15, a copy-program storing section 16, aprogram-creation-screen-display processing section 17, and a controlsection 18 that controls these processing sections. Note that only theprocessing sections necessary in performing copying of a sample programin an electronic manual are shown.

The input section 11 has a function of receiving inputs of a processingcommand and information to the electronic-manual browsing apparatus 10from a user. Examples of the input section 11 include a keyboard, apointing device and the like. The display section 12 has a function withwhich the electronic-manual browsing apparatus 10 displays content of anelectronic manual and content of a program to the user. As an example ofthe display section 12, a liquid crystal display device can be raised.Note that, as the input section 11 and the display section 12, an inputdevice of a touch panel type obtained by combining the display section12 and the input section 11 like a tablet terminal can be used.

The electronic-manual-data storing section 13 has stored thereinelectronic manual data of a control apparatus. The electronic manualdata is configured in, for example, an EPUB (Electronic Publication)format. FIG. 2 is a diagram showing an example of the configuration ofthe electronic manual data. The electronic manual data includesattribute information indicating an attribute of the electronic manualdata and manual content information including information concerningcontent of the electronic manual data.

The attribute information includes product specifying information suchas a model and a type name of a product of the control apparatusdisplayed in a model selection menu of the electronic manual, manualattribute information indicating an attribute of the manual such as alanguage and a version of the manual, product-manual correspondenceinformation for associating the type name in the product specifyinginformation and the electronic manual data. In these kinds ofinformation, manual name IDs, which are peculiar identifiers forspecifying the electronic manual data, are included. The manual name IDsare associated with one another. According to the attribute information,when the type name of the product of the control apparatus is selected,the electronic manual data corresponding to the type name can beextracted.

The manual content information includes document data, illustrationdata, and sample program data. The manual name ID is attached to each ofthe data. The document data is data representing the content of theelectronic manual in the form of a text. The document data includesinformation for displaying the illustration data and the sample programdata. The document data is created by, for example, an XML (ExtensibleMarkup Language). The illustration data is image data displayed in theelectronic manual. The sample program is sample program data displayedin the electronic manual. Embedding positions in the document data ofthe illustration data and the sample program data are specified in thedocument data. Therefore, when the document data is read and displayedon the display section 12, the illustration data or the sample programdata to be specified is read from the manual content information anddisplayed on the display section 12 according to information such as asize specified by the document data.

Note that the sample program in the first embodiment is a program thatcannot be described in the form of a simple text such as a ladderprogram. In the following explanation, the ladder program is explainedas an example of the sample program. A sample program included in anelectronic manual of a general control apparatus is a sample program towhich image data of the ladder program is pasted. Therefore, even ifsuch image data is pasted to an engineering tool that performs, forexample, programming of the control apparatus, editing of a programcannot be performed because content of the program is not obtained.Therefore, in the first embodiment, a sample program that can berepresented in a ladder graphic form and is described in the XML formatincluding the content of the program is used.

FIG. 3 is a diagram showing an example of the ladder program. FIG. 3(a)is a diagram showing a general ladder program. FIG. 3(b) is a diagramshowing a part of a file in which the ladder program of FIG. 3(a) isdescribed in the XML format. As shown in FIG. 3(a), in a ladder program300, in general, signs 311 to 316 such as contact signs and coil signsare described between an input side bus 301 and an output side bus 302and the signs are connected by horizontal connection lines. In FIG.3(a), function blocks 313 and 314 obtained by schematically simplifyingthe content of a part of the ladder program 300 are also included.

On the other hand, FIG. 3(b) is a program 320 described in the XMLformat. The program 320 is content for rendering the ladder program 300shown in FIG. 3(a) on the display section 12. The program 320 includesnot only a visual display description section in which renderingconditions are described but also a content description section in whichcontent of the program is described.

For example, a block 321 is content for describing the input side bus301 shown in FIG. 3(a). A block 322 is content for describing a contact311 shown in FIG. 3(a). In the block 322, ‘localID=“6”’ and‘negated=“true”’ in a row 323 are descriptions concerning the program.‘localID=“6”’ means an identifier provided at a contact and‘negated=“true”’ means a B contact. Further, ‘width=“15”’ and‘height=“2”’ are descriptions concerning rendering. The program 320described in the XML format in this way includes a visual displaydescription section concerning the rendering and a content descriptionsection concerning content of the program. Note that, when the program320 is described in such an XML format, the structure of the program isdefined in XML Schema.

The electronic-manual-display processing section 14 performs processingfor displaying, on the display section 12, electronic manual data in theelectronic-manual-data storing section 13. For example, theelectronic-manual-display processing section 14 can acquire anelectronic manual of a desired type name referring to attributeinformation from the electronic-manual-data storing section 13 anddisplay the electronic manual. The electronic-manual-display processingsection 14 has a function of, when a sample program is displayed,reading description concerning rendering of a file described in the XMLformat and rendering the file on the display section 12.

The program copy section 15 performs processing for copying, in a statein which the sample program in the electronic manual is displayed on thedisplay section 12 by the electronic-manual-display processing section14, the sample program when a copy instruction for the sample program isissued by the user. Specifically, the program copy section 15 selects acopy target in sample program data and stores the copy target in thecopy-program storing section 16. The copy-program storing section 16temporarily stores the sample program data selected by the program copysection 15.

The program-creation-screen-display processing section 17 performsprocessing for displaying a program creation screen on the displaysection 12 separately from the display processing of the electronicmanual by the electronic-manual-display processing section 14. The userperforms processing such as creation and editing of a program on theprogram creation screen displayed on the display section 12. Theprogram-creation-screen-display processing section 17 performsprocessing for reflecting the processing on the display section 12. Forexample, when the program creation screen is active on the displaysection 12, the program-creation-screen-display processing section 17performs processing for reflecting content input from the input section11 by the user on the program creation screen. Specifically, after thesample program is copied by the program copy section 15, when a pastingcommand for the sample program is issued, theprogram-creation-screen-display processing section 17 performsprocessing for pasting the sample program stored in the copy-programstoring section 16 to the program creation screen. When editing of thesample program displayed on the program creation screen is instructed,the program-creation-screen-display processing section 17 performsprocessing for reflecting the instruction.

Note that the electronic-manual-display processing section 14 isequivalent to, for example, an electronic manual viewer. Theprogram-creation-screen-display processing section 17 is equivalent toan engineering tool that performs processing such as setting of acontrol system (a control apparatus) and creation of a program used inthe control system. The program copy section 15 can be a functionimplemented on the electronic manual viewer or can be a functionimplemented on the engineering tool side.

A copy method for a sample program in the electronic-manual browsingapparatus 10 having such a configuration is explained. FIG. 4 is aflowchart for explaining an example of a procedure of copy processing ofa program according to the first embodiment. FIG. 5 is a diagramschematically showing the example of the procedure of the copyprocessing of the program according to the first embodiment.

First, when display of a sample program in electronic manual data isinstructed by an input from the input section 11 by the user (step S11),the electronic-manual-display processing section 14 reads sample programdata 501 of the XML format corresponding to the sample program fromelectronic manual data 500 of the electronic-manual-data storing section13 and renders the sample program data 501 on the display section 12(step S12). Consequently, the sample program is displayed on anelectronic-manual display screen 510.

Subsequently, the user selects, via the input section 11, a range ofcopying of the sample program on the electronic-manual display screen510 displayed on the display section 12 (step S13), and copying of theselected range of the sample program is instructed (step S14). Theprogram copy section 15 determines whether or not a copy target is apart of the sample program (step S15). That is, the program copy section15 determines whether a part of the sample program displayed on thedisplay section 12 is selected or the entire sample program is selected.

When the copy target is a part of the sample program (Yes at step S15),the program copy section 15 temporarily stores, in the copy-programstoring section 16, selected content in the sample program displayed onthe display section 12 (step S16).

When the copy target is not a part of the sample program, that is, whenthe copy target is the entire sample program (No at step S15), theprogram copy section 15 temporarily stores, in the copy-program storingsection 16, content of a file (sample program data) corresponding to thedisplayed sample program from the electronic-manual-data storing section13 (step S17).

Thereafter or after step S16, the user instructs, via the input section11, processing for pasting the copied sample program onto the programcreation screen 520 (step S18). The program-creation-screen-displayprocessing section 17 performs processing for pasting the sample programstored in the copy-program storing section 16 in a position designatedby the user on the program creation screen 520 displayed on the displaysection 12 (step S19). The program-creation-screen-display processingsection 17 reads the copied file of the XML format and displays, forexample, programs 521 and 522 of a ladder format on the program creationscreen 520 (step S20). Consequently, the copy processing of the sampleprogram ends, and the user is enabled to optionally edit the pastedsample program on the program creation screen 520.

Note that, when the sample program is pasted and displayed on theprogram creation screen 520 at step S19, the user may be enabled toselect whether the sample program is still displayed as the ladderprogram 521 or is converted into a function block 522 and displayed.When the sample program is converted into the function block 522, afunction block corresponding to the sample program to be copied has onlyto be registered in advance. The program-creation-screen-displayprocessing section 17 has, when the function block corresponding to thesample program to be displayed is registered, only to convert a portionof the sample program corresponding to the function block into thefunction block 522 and display the portion.

Conventionally, in general, an electronic manual of a control apparatusor the like is a file in a PDF (Portable Document Format) of a manualcreated by a normal paper medium. When a sample program of the controlapparatus included in the electronic manual is, for example, a ladderprogram, the ladder program is shown as a figure and is not a format forallowing editing of a program. The same holds true concerning a programof a language in general that cannot be described by a simple text usedin the control apparatus or the like. That is, sample program dataincluded in the conventional electronic manual is visually represented,and content of a program cannot be edited using the data. Therefore, auser performs processing for creating a program on a program creationscreen while referring to the data converted into an image.

On the other hand, in the first embodiment, the sample programconfigured by the language that cannot be described by the simple textincluded in the electronic manual of the control apparatus is describedin the file of the XML format including the description rendered on thedisplay section 12 and the content such as parameters in the program.Consequently, when the sample program in the electronic manual isdisplayed on the display section 12, after the sample program isselected and pasted to the program creation screen in the displaysection 12 as the program, it is made possible to edit the pasted sampleprogram on the program creation screen. Therefore, there is an effectthat the user can create the program by editing the sample programcopied from the electronic manual and pasted using the electronic-manualbrowsing apparatus 10. The user can create the program concerning thecontrol apparatus by diverting the sample program in the electronicmanual. Therefore, there is an effect that it is made possible to reducetime for a manual input and prevent an input mistake.

Note that, in the example explained above, the sample program of the XMLformat is used. However, sample programs of format of other markuplanguage can be used as long as content and the like of a program usedin the control apparatus can be defined and content of the program canbe rendered.

Second Embodiment

In the example explained in the first embodiment, the ladder program inthe electronic manual is described as the file of the XML format. In thefollowing explanation in a second embodiment, a ladder program in anelectronic manual is configured by data for display on a display sectionand data indicating content of an actual program.

FIG. 6 is a diagram showing an example of a data structure of sampleprogram data according to the second embodiment. Sample program data 130is actual content of a sample program displayed in an electronic manualand includes program data 131 of a binary format. The sample programdata 130 includes, as illustration data 132 of electronic manual data,data for program display 133 that is image data for visually displayingthe sample program in the electronic manual. In this way, the data forprogram display 133 and the program data 131 are configured by separatefiles and associated with each other. For example, two data (files) canbe associated with each other in attribute information or can beassociated by defining program data corresponding to illustration datain document data. When the sample program is displayed on the displaysection 12 by the electronic-manual-display processing section 14, thedata for program display 133, which is the illustration data 132, isused. When the sample program is copied, the program data 131 associatedwith the displayed data for program display 133 is copied.

The configuration of an electronic-manual browsing apparatus in thesecond embodiment is the same as the configuration of theelectronic-manual browsing apparatus in the first embodiment. However,when displaying the sample program of the electronic manual, theelectronic-manual-display processing section 14 reads and displays thedata for program display 133. When receiving an instruction for copyingof the sample program from the input section 11, the program copysection 15 extracts, from the electronic-manual-data storing section 13,the program data 131 corresponding to the currently-displayed data forprogram display 133 and stores the program data 131 in the copy-programstoring section 16. Note that, in the second embodiment, the data forprogram display 133 is image data, and information concerning displayedcontent cannot be selected. Therefore, a user selects the entire sampleprogram as a copying range.

Further, the program-creation-screen-display processing section 17 has afunction of converting the program data 131, which is not described inan image format, into a program of a format such as a ladder program anddisplaying the program. When an instruction for pasting the program data131 stored in the copy-program storing section 16 to a program creationscreen is issued, the program-creation-screen-display processing section17 performs processing for pasting the ladder program generated from theprogram data 131 to a predetermined position on the program creationscreen. Note that, because the other components are the same as thecomponents in the first embodiment, explanation of the components isomitted.

A copy method for a sample program in the electronic-manual browsingapparatus having such a configuration is explained. FIG. 7 is aflowchart for explaining an example of a procedure of copy processing ofa program according to the second embodiment. FIG. 8 is a diagramschematically showing the example of the procedure of the copyprocessing of the program according to the second embodiment.

First, when display of a sample program in an electronic manual isinstructed by an input from the input section 11 by the user (step S31),the electronic-manual-display processing section 14 reads, from theelectronic-manual-data storing section 13, data for program display 133of the corresponding sample program and renders the data for programdisplay 133 on the display section 12 (step S32). Consequently, anelectronic-manual display screen 810 is displayed on the display section12.

Subsequently, the user instructs, via the input section 11, copying ofthe sample program displayed on the electronic-manual display screen 810of the display section 12 (step S33). A target of the copying is theentire sample program.

Thereafter, the program copy section 15 reads out, from theelectronic-manual-data storing section 13, the program data 131corresponding to the data for program display 133 displayed on thedisplay section 12 and stores the program data 131 in the copy-programstoring section 16 (step S34).

Subsequently, the user instructs, via the input section 11, processingfor pasting the copied program data 131 onto the program creation screen820 (step S35). The program-creation-screen-display processing section17 performs processing for pasting the program data 131 of the sampleprogram stored in the copy-program storing section 16 to a positiondesignated by the user on the program creation screen 820 displayed onthe display section 12 (step S36). At this time, theprogram-creation-screen-display processing section 17 reads the copiedprogram data 131 of the binary format, converts the program data 131into a ladder program, and displays ladder program 821 on the programcreation screen 820 (step S37). Consequently, the copy processing of thesample program ends.

Note that, when the program-creation-screen-display processing section17 causes the display section 12 to display the program data 131 in stepS37, the program-creation-screen-display processing section 17 may causethe user to select whether the program data 131 is displayed as theladder program 821 or a part of the program data 131 is converted into afunction block 822 and displayed.

Note that, in the above explanation, the program data 131 is binarydata. However, the program data 131 can be text data. In the aboveexplanation, the data for program display 133 and the program data 131are associated as separate files. However, when the program data 131 isthe binary data, the data for program display 133 and the program data131 can be integrated as one file.

FIG. 9 is a diagram schematically showing an example of theconfiguration of the sample program. FIG. 9(a) shows a case in which thesample program data 130 is program data 131 a of a text format. In thiscase as well, as shown in FIG. 6, the data for program display 133,which is image data corresponding to the program data 131 a, is preparedin the illustration data 132 of the manual content information.

In FIGS. 9(b) and 9(c), the sample program data 130 (a file) isconfigured by data for program display 134 b, which is image data forvisualizing and displaying the sample program, and program data 131 b,which is content of the sample program. A difference between FIGS. 9(b)and 9(c) is arrangement order of the data in the sample program data 130(the file). In these cases, when displaying the sample program, theelectronic-manual-display processing section 14 reads the data forprogram display 134 b in the sample program data 130. Therefore, it isunnecessary to prepare data for program display in illustration data asshown in FIG. 6 and FIG. 9(a). When instructed to copy the sampleprogram, the program copy section 15 copies the program data 131 b inthe sample program data 130.

According to the second embodiment, it is possible to obtain effectssame as the effects in the first embodiment.

Third Embodiment

In the first and second embodiments, the method of copying the sampleprogram configured by the program created in the program language thatcannot be described by the simple text is explained. In a thirdembodiment, a method of copying a sample program, which is a textprogram described by a text, is explained.

The sample program to be copied in the third embodiment is a textprogram represented by a Structured Text (ST) format, an InstructionList (IL) format, or the like.

The configuration of an electronic-manual browsing apparatus in thethird embodiment is the same as the configuration of theelectronic-manual browsing apparatus in the first embodiment. However,when attribute information indicating a format of a text program isincluded in a tag of a copied text program, the program copy section 15copies the attribute information as well. When the attribute informationis not included, the program copy section 15 copies attributeinformation selected via the input section 11 by the user. Examples ofthe method of selection include a method of providing, in a positionwhere the sample program is inserted in document data, a buttonindicating attribute information (an ST format, an IL format, or thelike) of the text program and, when copying the sample program, causingthe user to select the button, and a method of displaying, whenselecting the sample program, an extended menu for enabling selection ofa format of the text program on an electronic-manual display screen andcausing the user to select a format of the text program out of theextended menu.

The program-creation-screen-display processing section 17 has a functionof displaying the copied text program on the program creation screen ina text format or a ladder program format. In this case, the text programis interpreted according to attribute information added to the textprogram. Note that, because the other components are the same as thecomponents in the first embodiment, explanation of the components isomitted.

A copy method for a sample program in the electronic-manual browsingapparatus having such a configuration is explained. FIG. 10 is aflowchart for explaining an example of a procedure of copy processing ofa program according to the third embodiment. FIG. 11 is a diagramschematically showing the example of the procedure of the copyprocessing of the program according to the third embodiment.

First, when display of a sample program in an electronic manual isinstructed by an input from the input section 11 by the user (step S51),the electronic-manual-display processing section 14 reads, from theelectronic-manual-data storing section 13, a text program of thecorresponding sample program and renders the text program on the displaysection 12 (step S52). Consequently, a sample program of a text formatis displayed on an electronic-manual display screen 1100.

Subsequently, the user instructs, via the input section 11, copying ofthe sample program displayed on the display section 12 (step S53). Atarget of the copying can be the entire sample program or a part of thesample program.

Thereafter, the program copy section 15 stores, in the copy-programstoring section 16, the text program displayed on the display section 12and selected by the user (step S54).

The program copy section 15 determines whether attribute information isincluded in the copied text program (step S55). When the attributeinformation is included (Yes at step S55), the attribute information isgiven to the text program (step S56). When the attribute information isnot included (No at step S55), the program copy section 15 acquiresattribute information of the text program selected by the user (stepS57). The attribute information is given to the text program (step S58).

Thereafter or after step S56, the user instructs, via the input section11, processing for pasting the copied sample program (text program) ontoa program creation screen 1110 (step S59). Theprogram-creation-screen-display processing section 17 performsprocessing for pasting the text program of the sample program stored inthe copy-program storing section 16 in a position designated by the useron the program creation screen 1110 displayed on the display section 12(step S60). The program-creation-screen-display processing section 17reads the copied text program, reads attribute information of the textprogram, and displays a program on the program creation screen 1110(step S61). In this case, the program-creation-screen-display processingsection 17 can directly display a text program 1111 or can discriminatea format of the text program using the attribute information, convertthe read text program on the basis of a result of the discrimination,and display the text program as a ladder program 1112 including a ladderprogram or a function block. Consequently, the copy processing of thesample program ends.

According to the third embodiment, it is made possible to obtain effectssame as the effects in the first embodiment.

Fourth Embodiment

A fourth embodiment is a method of generating a ladder program fromimage data of a sample program included in an electronic manual.

FIG. 12 is a block diagram schematically showing the functionalconfiguration of an electronic-manual browsing apparatus according tothe fourth embodiment. The electronic-manual browsing apparatus 10according to the fourth embodiment further includes, in theelectronic-manual browsing apparatus 10 in the first embodiment, aprogram-data converting section 19 that reads data for program display,which is image data of a sample program copied by the program copysection 15, and converts the data for program display into program data.

The program-data converting section 19 performs OCR (Optical CharacterRecognition)-like processing. That is, the program-data convertingsection 19 performs processing for components of the data for programdisplay, which is copied by the program copy section 15, in order from ahigher horizontal connection line of the data for program display. Forexample, the program-data converting section 19 sequentiallydiscriminates, concerning the top horizontal connection line, from theleft to right, components such as an input side bus, a horizontalconnection line, signs (contact signs, coil signs, and the like), andcharacters described on the signs and creates a program. Theprogram-data converting section 19 performs, concerning horizontalconnection lines of the ladder program in a selected range, processingfor performing the discrimination processing in the same mannerconcerning the next horizontal connection line when reaching an outputside bus on the right side. Note that the program to be created can be aladder program assembled using components same as the components of theladder program indicated by reading source image data, can be a textprogram of an IL format or an ST format in which the read signs areconverted into a processing command, or can be programs of otherformats. The conversion processing of the program by the program-dataconverting section 19 can be performed after the data for programdisplay is stored in the copy-program storing section 16 or can beperformed after a pasting instruction is issued via the input section 11by the user.

The electronic-manual-data storing section 13 retains, as illustrationdata, the data for program display obtained by converting the sampleprogram into an image. However, the electronic-manual-data storingsection 13 does not retain sample program data, which is content of thesample program.

The copy-program storing section 16 temporarily stores the data forprogram display copied by the program copy section 15 and stores theprogram data converted by the program-data converting section 19.

The program-creation-screen-display processing section 17 has a functionof pasting the program data converted by the program-data convertingsection 19 and stored in the copy-program storing section 16 onto theprogram creation screen of the display section 12. Note that, becausethe other components are the same as the components in the firstembodiment, explanation of the components is omitted.

A copy method for a sample program in the electronic-manual browsingapparatus having such a configuration is explained. FIG. 13 is aflowchart for explaining an example of a procedure of copy processing ofa program according to the fourth embodiment. FIG. 14 is a diagramschematically showing the example of the procedure of the copyprocessing of the program by the fourth embodiment.

First, when display of a sample program in an electronic manual isinstructed by an input from the input section 11 by the user (step S71),the electronic-manual-display processing section 14 reads, from theelectronic-manual-data storing section 13, data for program display ofthe corresponding sample program and renders the data for programdisplay on the display section 12 (step S72). Consequently, the data forprogram display is displayed on an electronic-manual display screen1400.

Subsequently, the user instructs, via the input section 11, copying ofthe sample program displayed on the display section 12 (step S73). Thetarget of the copying can be the entire sample program or a part of thesample program.

Thereafter, the program copy section 15 copies image data of the sampleprogram displayed on the display section 12 and selected by the user andtemporarily stores the image data in the copy-program storing section 16(step S74).

Subsequently, the user instructs, via the input section 11, processingfor pasting the copied sample program onto a program creation screen1410 (step S75). When receiving the instruction for the pastingprocessing, the program-data converting section 19 performs, concerninga ladder program included in the data for program display copied by theprogram copy section 15, in units of one horizontal connection line,program conversion processing for sequentially reading components inorder from the top horizontal connection line and converting thecomponents into a program (step S76). Converted program data is storedin the copy-program storing section 16. Note that the conversion intothe program can be executed after the data for program display is storedin the copy-program storing section 16 rather than being executed afterthe pasting processing is instructed.

Thereafter, the program-creation-screen-display processing section 17performs processing for pasting the program data of the sample programconverted by the program-data converting section 19 in a positiondesignated by the user on the program creation screen 1410 displayed onthe display section 12 (step S77). The program-creation-screen-displayprocessing section 17 displays the program data acquired from theprogram-data converting section 19 on the program creation screen 1410of the display section 12 (step S78). In this case, when displaying theprogram data on the program creation screen 1410, theprogram-creation-screen-display processing section 17 can display aladder program 1411 converted according to the instruction from the userwhile keeping a format of the ladder program 1411 or can convert theladder program 1411 into a ladder program 1412 including a functionblock and display the ladder program 1412. Consequently, the copyprocessing of the sample program ends.

According to the fourth embodiment, it is possible to obtain effectssame as the effects in the first embodiment.

Fifth Embodiment

A fifth embodiment is a method of generating a ladder program from imagedata of a sample program included in an electronic manual as in thefourth embodiment.

The configuration of an electronic-manual browsing apparatus in thefifth embodiment is the same as the configuration of theelectronic-manual browsing apparatus in the first embodiment. Therefore,explanation of the configuration of the electronic-manual browsingapparatus is omitted. However, in the fifth embodiment, as sampleprogram data stored in the electronic-manual-data storing section 13,data for program display to which a program is embedded (hereinafter maybe referred to just as “program-attached data for program display”) isused, in which program data, which is content of a program, is embeddedin data for program display for visually displaying a sample program bya method of electronic watermark.

A copy method for a sample program in the electronic-manual browsingapparatus having such a configuration is explained. FIG. 15 is aflowchart for explaining an example of a procedure of copy processing ofa program according to the fifth embodiment. FIG. 16 is a diagramschematically showing the example of the procedure of the copyprocessing of the program by the fifth embodiment.

First, when display of a sample program in an electronic manual isinstructed by an input from the input section 11 by a user (step S91),the electronic-manual-display processing section 14 reads, from theelectronic-manual-data storing section 13, program-attached data forprogram display to which a program of the corresponding sample programis embedded and renders the program-attached data for program display ison the display section 12 (step S92). Consequently, an electronic-manualdisplay screen 1600 having the program-attached data for program displayis displayed on the display section 12.

Subsequently, the user instructs, via the input section 11, copying ofthe sample program displayed on the display section 12 (step S93). Thetarget of the copying can be the entire sample program or a part of thesample program.

Thereafter, the program copy section 15 acquires, from theprogram-embedded data for program display, program data included in arange selected by the user (step S94) and stores the acquired programdata in the copy-program storing section 16 (step S95). In this case,the program copy section 15 acquires program data corresponding to therange selected by the user, among the program data embedded in the datafor program display to which the program is attached.

Subsequently, the user instructs, via the input section 11, processingfor pasting the copied sample program onto a program creation screen1610 (step S96). Thereafter, the program-creation-screen-displayprocessing section 17 performs processing for pasting the program dataof the sample program stored in the copy-program storing section 16 in aposition designated by the user on the program creation screen 1610displayed on the display section 12 (step S97).

The program-creation-screen-display processing section 17 displays theprogram data acquired from the program-data converting section 19 in theprogram creation screen 1610 (step S98). In this case, theprogram-creation-screen-display processing section 17 can display thecopied program data as a ladder program 1611, can display the copiedprogram data as a ladder program 1612 including a function block, or candisplay the copied program data in other formats. Consequently, the copyprocessing of the sample program ends.

According to the fifth embodiment, it is possible to obtain effects sameas the effects in the first embodiment.

Note that the first to fifth embodiments are based on the premise thatthe electronic manual is present in the electronic-manual browsingapparatus 10. However, the present invention is not limited to this. Forexample, in an electronic-manual browsing system in which theelectronic-manual-data storing section 13 is disposed on anelectronic-manual storage server, the electronic-manual browsingapparatus 10 can access the electronic-manual storage server and displaythe electronic manual. FIG. 17 is a block diagram schematically showingan example of the configuration of the electronic-manual browsingsystem. In the figure, the electronic-manual browsing apparatus 10 andan electronic-manual storage server 30 including anelectronic-manual-data storing section 31 are connected via a network40. The electronic-manual-display processing section of theelectronic-manual browsing apparatus 10 has a function of displayingelectronic manual data in the electronic-manual storage server 30 justlike a browser.

A method of copying a sample program in such a configuration is notlimited either. For example, a button for instructing copying of thesample program and notifying the program-creation-screen-displayprocessing section 17 of, for example, a position (URL: Uniform ResourceLocator) on a network indicating a place of the sample program can beprovided on an electronic manual (document data). In such an example,when the button is pressed, the electronic-manual-display processingsection 14 passes the URL to the program-creation-screen-displayprocessing section 17. The program copy section 15 copies program datapresent in the designated URL and pastes the program data on a programcreation screen.

Besides, a button for instructing copying of the sample program andacquiring program data from the place of the sample program can beprovided on the electronic manual (document data). In such an example,when the button is pressed, the electronic-manual-display processingsection 14 accesses the electronic-manual storage server 30, acquiresthe sample program, and stores the program data received from theelectronic-manual storage server 30 in the copy-program storing section16. The program-creation-screen-display processing section 17 thenpastes the program data on the program creation screen.

Examples of a method of pasting the program data stored in thecopy-program storing section 16 on the program creation screen include,when an OS (Operating System) is configured by Windows (registeredtrademark) or the like, a method of pasting the program data using aclipboard provided by the OS and a method of pasting the program datausing drag-and-drop.

Further, besides, when a copy button for the sample program is selectedon the electronic-manual display screen displayed by theelectronic-manual-display processing section 14, a program can beconverted into a component and stored in a local memory (e.g., a part ofthe copy-program storing section 16) for theprogram-creation-screen-display processing section 17. When copying ofthe sample program is instructed on the electronic-manual displayscreen, it can be arranged such that the program-creation-screen-displayprocessing section 17 requests the program data to theelectronic-manual-display processing section 14, and that the content ofthe request is stored in the local memory for theprogram-creation-screen-display processing section 17.

Sixth Embodiment

In the embodiments explained above, the sample program included in theelectronic manual is pasted in a form usable on the program creationscreen. In a sixth embodiment, an electronic-manual browsing apparatusis explained that can display an electronic manual including a sampleprogram adapted to the configuration of a control system built by a userand copy the sample program.

FIG. 18 is a block diagram schematically showing an example of thefunctional configuration of the electronic-manual browsing apparatusaccording to the sixth embodiment. The electronic-manual browsingapparatus 10 is connected to a control system 50, which is built by theuser, via the network 40.

In the control system 50, a CPU unit 52 and other units 53 are connectedon a base unit 51, in which the CPU unit 52 performs a predeterminedoperation on the basis of information concerning control from the otherunits 53 connected (attached) to the base unit 51 and transmits, forexample, control information for controlling a target to be controlledto the other units 53. For the other units 53, for example, apositioning unit or an analog unit can be raised. The other units 53 areinserted into slots provided on the base unit 51. Note that, in general,slot numbers are allocated in order from a slot closest to the CPU unit52 on the base unit 51.

The electronic-manual browsing apparatus 10 further includes, in theelectronic-manual browsing apparatus 10 in the first embodiment, acommunication section 20, a system-configuration-information acquiringsection 21, a system-configuration setting section 22, and asample-program updating section 23.

The communication section 20 performs communication with the controlsystem 50 connected to the communication section 20 via the network 40.The system-configuration-information acquiring section 21 acquires, fromthe CPU unit 52 and each of the other units 53 (control apparatuses)configuring the control system 50, system configuration informationincluding unit numbers indicating type names of the units and slotnumbers, which are attaching positions on the base unit 51.

The system-configuration setting section 22 reads the acquired systemconfiguration information, creates a system-configuration setting screenusing the system configuration information and information acquired fromthe electronic manual stored in the electronic-manual-data storingsection 13 on the basis of the system configuration information, andcauses the display section 12 to display the system-configurationsetting screen. The system-configuration setting section 22 generatessample program update information, which includes content set by theuser via the input section 11, necessary for updating the sample programaccording to the system configuration information.

FIG. 19 is a diagram showing an example of the system-configurationsetting screen. An example of a system-configuration setting screen 1900for allocation of input and output addresses of the units is shown. Thesystem-configuration setting screen 1900 includes sample program updateinformation 1910. The sample program update information 1910 includes“slot” 1911 indicating a slot number attached to each of the slots ofthe base unit 51, “type” 1912 indicating a type of each of the unitsinserted into the respective slots, “type name” 1913 indicating a typename of each of the units inserted into the respective slots, “number ofpoints” 1914 indicating the number of input and output addresses of eachof the units, and “head XY” 1915 indicating a head input and outputaddress allocated to each of the units. In the “slot” 1922 and the “typename” 1913, when the system configuration information is read, a slotnumber and a unit number of the system configuration information areautomatically input by the system-configuration setting section 22 anddisplayed on the display section 12.

The system-configuration setting section 22 searches through anelectronic manual corresponding to the unit number in the systemconfiguration information, acquires the number of input and outputaddresses from the electronic manual, and inputs the number to the“number of points” 1914 of the system-configuration setting screen 1900.It is assumed that the electronic-manual-data storing section 13 has adata structure for enabling retrieval of electronic manual data from the“type name” and the electronic manual data has a data structure forenabling retrieval of the number of input and output addresses of a unitcorresponding to the “type name”.

Further, the system-configuration setting section 22 automaticallyinputs, on the basis of the input “number of points” 1914, a head inputand output address of the other unit 53 inserted into the slot on thecloser side to the CPU unit 52. For example, when the number of inputand output addresses (the number of points) is 16 (decimal notation)points and a head address (a head XY) is set to “0020 (hexadecimalnotation)”, a head address (a head XY) of a unit having a type name“L60AD4” inserted into a slot 0 is “0030” obtained by adding the numberof input and output addresses (the number of points) “16 (decimalnotation)” of the immediately preceding slot to a head address (a headXY) “0020 (hexadecimal notation)” of the immediately preceding slot. Ahead address (a head XY) of a unit having a type name “LX10” insertedinto a slot 1 is “0040” obtained by adding the number of input andoutput addresses (the number of points) “16 (decimal notation)” of theimmediately preceding slot to the head address (the head XY)” “0030(hexadecimal notation)” of the immediately preceding slot. Subsequently,head addresses (head XYs) of the system-configuration setting screen1900 are set in the same manner.

Note that the system-configuration setting screen 1900 can be edited bythe user. The head addresses can be optionally changed. When a “settingend” button 1920 is selected by the user, content of the sample programupdate information 1910 at that point is stored.

When acquiring the sample program update information 1910 from thesystem-configuration setting section 22, the sample-program updatingsection 23 changes the sample program included in the electronic manualaccording to the sample program update information 1910 and generates anupdated sample program. Note that, the sixth embodiment is based on thepremise that the sample program is a file described in the XML format.Therefore, it is possible to obtain the updated sample program bysubstituting content of the sample program update information,specifically, the input and output address represented by the head XY ina sample program set in advance.

The electronic-manual-display processing section 14 displays theelectronic manual on the display section 12. However, theelectronic-manual-display processing section 14 has a function ofdisplaying, when display of the sample program in the electronic manualis instructed, the updated sample program updated by the sample-programupdating section 23. Note that components same as the components in thefirst embodiment are denoted by the same reference numerals and signsand explanation of the components is omitted.

Update processing of a sample program based on system configurationinformation according to the sixth embodiment is explained. FIG. 20 is aflowchart for explaining an example of a procedure of the updateprocessing of the sample program according to the sixth embodiment.

First, the user connects the control system 50 built by combining theunits (the control apparatuses) to the electronic-manual browsingapparatus 10 via the network 40 (step S111). Subsequently, thesystem-configuration-information acquiring section 21 of theelectronic-manual browsing apparatus 10 acquires system configurationinformation from the connected control system 50 (step S112).

Thereafter, the system-configuration setting section 22 displays thesystem-configuration setting screen 1900 on the display section 12 usingthe acquired system configuration information (step S113). At thisstage, only “type name” corresponding to each of the unit numbers areinput to the position of the slot numbers in the sample program updateinformation 1910 of the system-configuration setting screen 1900.

Subsequently, the system-configuration setting section 22 acquires, fromthe electronic-manual-data storing section 13, electronic manual datacorresponding to the unit number of the acquired system configurationinformation (step S114). The electronic-manual-display processingsection 14 displays the acquired electronic manual data on the displaysection 12 (step S115). The system-configuration setting section 22acquires the number of input and output addresses from the acquiredelectronic manual (step S116) and inputs the value of the number to the“number of points” 1914 of the sample program update information 1910 ofthe system setting screen 1900 (step S117).

Thereafter, the system-configuration setting section 22 calculates headinput and output address of each of the units inserted into therespective slots using the “number of points” 1914 and the “head XY”1915 of the immediately preceding slot of the sample program updateinformation 1910 (step S118) and inputs value of the head input andoutput address to the “head XY” 1915 of the sample program updateinformation 1910 of the system setting screen 1900 (step S119).

Subsequently, when setting storage is instructed by the user (stepS120), the system-configuration setting section 22 stores, as sampleprogram update information, content of the system-configuration settingscreen 1900 displayed on the display section 12 (step S121).

Thereafter, the sample-program updating section 23 updates, according tothe sample program update information, the sample program included inthe electronic manual displayed on the display section 12 (step S122).

When the user instructs display processing of the sample program in theelectronic manual via the input section 11 (step S123), theelectronic-manual-display processing section 14 displays the updatedsample program on the display section 12 (step S124). Consequently, thedisplay processing of the updated sample program ends.

Note that the sample program changed according to the systemconfiguration of the control system 50 can be copied and pasted to aprogram creation screen as described in the first embodiment. However,because the pasting processing is explained in the first embodiment,explanation of the pasting processing is omitted.

In the sixth embodiment, the system configuration information of thecontrol system built by the user is acquired, the electronic manual ofthe control apparatus configuring the system is acquired on the basis ofthe system configuration information, the sample program updateinformation is generated, and the sample program in the electronicmanual is updated on the basis of the sample program update information.Consequently, the sample program is based on the control system built bythe user. There is an effect that it is easy to understand, for example,creation of a program by the user.

By combining the sixth embodiment with the first embodiment, the usercopies the update program updated on the basis of the control system andperforms programming using the update program. Therefore, complicatedprocessing for performing setting of parameters such as input and outputaddresses is not performed, and thus there is an effect that theprogramming is made easier for the user.

INDUSTRIAL APPLICABILITY

As explained above, the electronic-manual browsing apparatus accordingto the present invention is useful for browsing of a manual of a controlapparatus that includes a ladder program in an electronic manual.

REFERENCE SIGNS LIST

-   -   10 Electronic-manual browsing apparatus    -   11 Input section    -   12 Display section    -   13 Electronic-manual-data storing section    -   14 Electronic-manual-display processing section    -   15 Program copy section    -   16 Copy-program storing section    -   17 Program-creation-screen-display processing section    -   18 Control section    -   19 Program-data converting section    -   20 Communication section    -   21 System-configuration-information acquiring section    -   22 System-configuration setting section    -   23 Sample-program updating section    -   30 Electronic-manual storage server    -   40 Network    -   50 Control system    -   51 Base unit    -   52 CPU unit    -   53 Other units

The invention claimed is:
 1. An electronic-manual browsing apparatuscomprising: an electronic-manual-display processing section thatdisplays, on an electronic-manual display screen on a display section,an electronic manual for a control apparatus including a sample programconcerning the control apparatus, the sample program retaining contentof the sample program and information for displaying the sample programin a graphic form on the display section; aprogram-creation-screen-display processing section that displays, on thedisplay section, a program creation screen for creating a program usedin the control apparatus; and a program copy section that copies thesample program in the electronic manual selected according to aninstruction from a user and temporarily stores the sample program,wherein a communication section that communicates with, via a network, acontrol system configured by inserting the control apparatus into a slotof a base unit; a system-configuration-information acquiring sectionthat acquires, from the communication section, system configurationinformation including a type name concerning the control apparatusconfiguring the control system and a number of the slot into which thecontrol apparatus is inserted; a system-configuration setting sectionthat acquires an electronic manual of the control apparatus on the basisof the type name in the system configuration information, acquires, fromthe electronic manual, a number of input and output addresses includedin the control apparatus, and allocates a top input and output addressto the control apparatus attached to the base unit and generates sampleprogram update information using the number of the input and outputaddresses; and a sample-program updating section that updates the headinput and output address of the sample program included in the acquiredelectronic manual and generates an updated sample program on the basisof the sample program update information, wherein the sample program issample program data including a visual-display description section,which is a description for visually displaying a program in a graphicform, and a content description section, which is actual content of theprogram, and described by a markup language, theelectronic-manual-display processing section displays the sample programon the display section in a graphic form on the basis of thevisual-display description section in the sample program data in theelectronic-manual display screen, the program copy section selects andstores selected sample program data, which is the sample program data ina range corresponding to the sample program selected in theelectronic-manual display screen on the display section by the user, theprogram-creation-screen-display processing section pastes the selectedsample program data in the program creation screen and displays thesample program on the display section in a graphic form on the basis ofthe visual-display description section in the sample program data, theprogram-creation-screen-display processing section pastes the storedsample program in the program creation screen in a format editable onthe program creation screen and displays the sample program on thedisplay section in a graphic form, and the electronic-manual-displayprocessing section displays the updated sample program when displayingthe sample program of the electronic manual.
 2. The electronic-manualbrowsing apparatus according to claim 1, further comprising anelectronic-manual-data storing section that stores the electronicmanual.
 3. The electronic-manual browsing apparatus according to claim1, wherein the sample program is a ladder program.
 4. Theelectronic-manual browsing apparatus according to claim 3, wherein theprogram-creation-screen-display processing section pastes, according toselection by the user, the sample program in the program creation screenin a ladder graphic form or a function block graphic form obtained byvisually simplifying a part of the ladder program.
 5. Anelectronic-manual browsing system, wherein the electronic-manualbrowsing apparatus according to claim 1 and an electronic manual storingapparatus that stores the electronic manual are connected via a network,and the electronic-manual-display processing section displays, on thedisplay section, the electronic manual read from the electronic-manualstoring apparatus via the network.